using System;
using System.Data;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class MenuApp: UserControl
{
    protected void Page_Load( object sender, EventArgs e )
    {
    }

    public void Crear( DataSet ds )
    {
        DataView dv = new DataView( ds.Tables["Menu"], "MenuPadreId is null", "MenuOrden", DataViewRowState.CurrentRows );
        CrearOpciones( null, ds.Tables["Menu"], dv );
    }

    private void CrearOpciones( MenuItem itemPadre, DataTable dt, DataView dv )
    {
        foreach( DataRowView drv in dv )
        {
            MenuItem item = new MenuItem( drv["MenuNombre"].ToString(), drv["MenuId"].ToString() );
            item.NavigateUrl = drv["MenuURL"].ToString();

            if (itemPadre == null)
            {
                mnuMenu.Items.Add(item);
            }
            else
                itemPadre.ChildItems.Add(item);

            DataView dvHijos = new DataView( dt, "MenuPadreId = " + drv["MenuId"].ToString(), "MenuOrden", DataViewRowState.CurrentRows );
            CrearOpciones( item, dt, dvHijos );
        }
    }
}